package day7Exer;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Random;

/*
* 集合工具类
* 功能 1:为整数类型的集合去重
* 功能 2:随机产生一个长度为10的范围为0-20的集合，并且不重复
* 功能 3:为整数类型集合排序
* */
public class ArrayUtil {

    public static void main(String[] args) {
        ArrayList<Integer> list = new ArrayList<>();

        list.add(1);
        list.add(2);
        list.add(1);
        list.add(3);

        list = removeDup(list);

        System.out.println(list);

//        System.out.println("随机产生的长度为10的集合为"+);
        ArrayList<Integer> list2 = randomCreateArray();

        Collections.sort(list2);

        System.out.println(list2);

    }


    public static ArrayList<Integer> removeDup(ArrayList<Integer> list){
        //创建新集合
        ArrayList<Integer> newList = new ArrayList<>();
        //indexOf, contains
        //将原集合中的元素遍历
        for (int i = 0; i < list.size(); i++) {
            if(!newList.contains(list.get(i))){
                newList.add(list.get(i));
            }
        }
        return newList;
//        //如何把新集合赋值给原集合
//        list.clear();
//        list.addAll(newList);
//        //只是更改了变量list指向的地址
////        list = newList;
    }

    public static ArrayList<Integer> randomCreateArray(){
        //创建随机产生元素的对象
        Random random = new Random();

        ArrayList<Integer> list = new ArrayList<>();

        while(list.size()<10){

            int item = random.nextInt(21);

            //如果元素当前集合不存在，放入集合
            if(!list.contains(item)){
                list.add(item);
            }
        }

        return list;

    }

    public static void sort(){

        //冒泡排序

//        Arrays.sort();

    }
}
